using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using Etna.Exportaciones.En;
using Etna.Exportaciones.Ad;

namespace Etna.Exportaciones.Rn
{
   public class RnCliente:RnGeneral
   {
      public EnCliente Leer(int pidCliente)
      {
         EnCliente oEnCliente = null;

         using (SqlConnection con = new SqlConnection(CadenaConexion))
         {
            try
            {
               con.Open();
               AdCliente oAdCliente = new AdCliente();
               oEnCliente = oAdCliente.Leer(pidCliente, con);
            }
            catch (SqlException ex)
            {
               oEnCliente = null;
            }
         }
         return oEnCliente;
      }

      // Proceso para insertar un registro nuevo
      public bool Insertar(EnCliente poEnCliente)
      {
          bool Resultado = false;

          using (SqlConnection con = new SqlConnection(CadenaConexion))
          {

             try
              {
                  con.Open();
                  AdCliente oAdCliente = new AdCliente();
                  Resultado = oAdCliente.Insertar(poEnCliente, con);
              }
              catch (SqlException ex)
              {
                  Resultado = false;
              }
          }
          return Resultado;
      }
      // Proceso para modificar un registro existente
      public bool Modificar(EnCliente poEnCliente)
      {
          bool Resultado = false;

          using (SqlConnection con = new SqlConnection(CadenaConexion))
          {

             try
              {
                  con.Open();
                  AdCliente oAdCliente = new AdCliente();
                  Resultado = oAdCliente.Modificar(poEnCliente, con);
              }
              catch (SqlException ex)
              {
                  Resultado = false;
              }
          }
          return Resultado;
      }
      public List<EnCliente> Listar(int pidCliente)
      {
         List<EnCliente> loEnCliente = null;

         using (SqlConnection con = new SqlConnection(CadenaConexion))
         {
            try
            {
               con.Open();
               AdCliente oAdCliente = new AdCliente();
               loEnCliente = oAdCliente.Listar(pidCliente, con);
            }
            catch (SqlException ex)
            {
               loEnCliente = null;
            }
         }
         return loEnCliente;
      }

   }
}
